home *** CD-ROM | disk | FTP | other *** search
- // Visual IRC '96 standard event/alias/menu library
- // Version 0.82
-
- Name V96 0.82 standard event/alias/menu library
-
- // Events
-
- Event <default> "*"
- // This event is handled internally.
-
- // Default server text is displayed
- // automatically by ViRC '96.
- EndEvent
-
- Event <OnStart> "*"
- // This event is fired when ViRC '96 starts up.
- EndEvent
-
- Event <OnClose> "*"
- // This event is fired when ViRC '96 closes down.
- EndEvent
-
- Event <OnConnect> "*"
- // This event is fired on connection to the server.
- EndEvent
-
- Event <OnDisconnect> "*"
- // This event is fired on disconnection from the server.
- EndEvent
-
- Event <OnNotifyJoin> "*"
- TextOut > . ecNOTICE *** Notify: $0 is on IRC
- EndEvent
-
- Event <OnNotifyQuit> "*"
- TextOut > . ecNOTICE *** Notify: $0 has quit IRC
- EndEvent
-
- Event <OnNewInactiveText> "*"
- // This event is fired when a line of text is added
- // to a window that doesn't have the focus.
- EndEvent
-
- Event <OnDCCChatConnect> "*"
- // Fired when a DCC Chat session connects.
- // The nick is in $0.
- EndEvent
-
- Event <OnDCCChatDisconnect> "*"
- // Fired when a DCC Chat session disconnects.
- // The nick is in $0.
- EndEvent
-
- Event <OnDCCChatText> "*"
- // Fired when new DCC Chat text comes in.
- // The nick is in $0. The text is in $1-.
- EndEvent
-
- Event <OnDCCSendConnect> "*"
- // Fired when a DCC Send session connects.
- // The nick is in $0. The filename is in $1-.
- EndEvent
-
- Event <OnDCCSendDisconnect> "*"
- // Fired when a DCC Send session disconnects.
- // The nick is in $0. The filename is in $1-.
- // $2 contains 1 if the transfer completed successfully, 0 otherwise.
- EndEvent
-
- Event <OnDCCGetConnect> "*"
- // Fired when a DCC Get session connects.
- // The nick is in $0. The filename is in $1-.
- EndEvent
-
- Event <OnDCCGetDisconnect> "*"
- // Fired when a DCC Get session disconnects.
- // The nick is in $0. The filename is in $1-.
- // $2 contains 1 if the transfer completed successfully, 0 otherwise.
- EndEvent
-
- Event RawServerNotice "NOTICE *"
- TextOut > . ecError *** [\bRAW\b] $2-
- EndEvent
-
- Event JOIN "* JOIN"
- TextOut > $2 ecJOIN *** \b$nick ($user@$host)\b has joined channel $2
- if ($GetBanlevel($nick!$user@$host) >= 1)
- Bk $2 $nick You're not welcome here!! (banlevel = $GetBanlevel($nick!$user@$host))
- endif
- if ($GetUserlevel($nick!$user@$host) >= 1)
- Mode $2 +o $nick
- endif
- EndEvent
-
- Event PART "* PART"
- if ([$nick] != [$N])
- TextOut > $2 ecPART *** \b$nick ($user@$host)\b has left channel $2
- endif
- EndEvent
-
- Event QUIT "* QUIT"
- for (@ $i = 1; $i <= $channelcount(); $i++)
- if ($ison($nick $channels($i)))
- TextOut > $channels($i) ecQUIT *** Signoff: \b$nick ($user@$host)\b has left IRC [$2-]
- endif
- endfor
- -@ $i
- EndEvent
-
- Event TOPIC "* TOPIC"
- TextOut > $2 ecTOPIC *** \b$nick\b has changed the topic on $2 to "$StrTrim($3-)"
- EndEvent
-
- Event MODE "* MODE"
- TextOut > $2 ecMODE *** Mode change [$3-] on channel $2 by \b$nick\b
- EndEvent
-
- Event INVITE "* INVITE"
- TextOut ecNotice *** \b$nick ($user@$host)\b invites you to channel $StrTrim($3-)
- EndEvent
-
- Event WALLOPS "* WALLOPS"
- TextOut ecNotice !\b$nick\b!\t$StrTrim($2-)
- EndEvent
-
- Event ChannelMessage "* PRIVMSG #*"
- TextOut > $2 ecChanText <\b$nick\b>\t$StrTrim($3-)
- EndEvent
-
- Event CTCP "* PRIVMSG * :\A*"
- TextOut ecCTCP *** Received CTCP $Upper($StrTrim($3)) from \b$nick\b: $4-
- EndEvent
-
- Event ChannelNotice "* NOTICE #*"
- TextOut > $2 ecNOTICE =\b$nick\b=\t$StrTrim($3-)
- EndEvent
-
- Event PrivateNotice "* NOTICE *"
- if ($StrPos(. $nick) > 0)
- TextOut > . ecNOTICE =\b$nick\b=\t$StrTrim($3-)
- else
- TextOut ecNOTICE =\b$nick\b=\t$StrTrim($3-)
- endif
- EndEvent
-
- Event CTCPReply "* NOTICE * :\A*"
- TextOut ecCTCP *** Received CTCP $Upper($StrTrim($3)) reply from \b$nick\b: $4-
- EndEvent
-
- Event KICK "* KICK *"
- TextOut > $2 ecKICK *** \b$nick\b has kicked \b$3\b from channel $2 [$StrTrim($4-)]
- EndEvent
-
- Event NICK "* NICK"
- for (@ $i = 1; $i <= $channelcount(); $i++)
- if ($ison($nick $channels($i)))
- TextOut > $channels($i) ecNICK *** \b$nick\b is now known as \b$2\b
- endif
- endfor
- -@ $i
- EndEvent
-
- Event PrivateMessage "* PRIVMSG *"
- if ($GetSetting(Options QueryEnabled)) || ($IsQuerying($nick))
- TextOut > $nick ecQueryText <\b$nick\b>\t$StrTrim($3-)
- else
- TextOut ecPRIVMSG *\b$nick\b*\t$StrTrim($3-)
- endif
- EndEvent
-
- Event ChannelAction "* PRIVMSG #* :\AACTION"
- TextOut > $2 ecACTION * \b$nick\b $4-
- EndEvent
-
- Event PrivateAction "* PRIVMSG * :\AACTION"
- if ($GetSetting(Options QueryEnabled)) || ($IsQuerying($nick))
- TextOut > $nick ecACTION *> \b$nick\b $4-
- else
- TextOut ecACTION *> \b$nick\b $4-
- endif
- EndEvent
-
- Event PingReply "* NOTICE * :\APING"
- TextOut ecCTCP *** Received CTCP $StrTrim($3) reply from \b$nick\b: $DecodePingInterval($4)
- EndEvent
-
- Event Ping "* PRIVMSG * :\APING"
- // Don't display anything when a ping
- // comes in.
- EndEvent
-
- Event 471 "* 471 *"
- TextOut > . ecError *** Cannot join channel $3 (+l - channel is full)
- EndEvent
-
- Event 473 "* 473 *"
- TextOut > . ecError *** Cannot join channel $3 (+i - invite-only)
- EndEvent
-
- Event 474 "* 474 *"
- TextOut > . ecError *** Cannot join channel $3 (+b - you're banned)
- EndEvent
-
- Event 475 "* 475 *"
- TextOut > . ecError *** Cannot join channel $3 (+k - channel key is set)
- EndEvent
-
- // Aliases
-
- Alias J
- if ([$1] == [])
- @ $x = $?="Enter a channel name to join:"
- else
- @ $x = $1-
- endif
- if ([$substr($x 1 1)] != [#]) && ([$substr($x 1 1)] != [&])
- @ $x = #$x
- endif
- Join $x
- -@ $x
- EndAlias
-
- Alias OP
- if ([$1] == [])
- Mode $C +oooo $?="Enter some nicks to op:"
- else
- Mode $C +oooo $1-
- endif
- EndAlias
-
- Alias DEOP
- if ([$1] == [])
- Mode $C -oooo $?="Enter some nicks to deop:"
- else
- Mode $C -oooo $1-
- endif
- EndAlias
-
- // Menus and popups
-
- MenuTree MT_MAINMENU
- M_FILE <none> 0 0 &File
- M_NEWCONNECT Ctrl+K 0 1 &New connection ...
- M_SETUP <none> 0 1 Client s&etup ...
- M_FSEP1 <none> 0 1 -
- M_EXIT Alt+X 0 1 E&xit
- M_TOOLS <none> 0 0 &Tools
- M_FINGER Ctrl+F 0 1 UNIX &finger ...
- M_DNS Ctrl+L 0 1 &DNS lookup ...
- M_PORTSCAN Ctrl+P 0 1 &Port scanner ...
- M_TSEP1 <none> 0 1 -
- M_LINKS <none> 1 1 &Links
- M_CHANLIST <none> 1 1 &Channel list ...
- M_TSEP2 <none> 0 1 -
- M_EXPLORE Ctrl+E 0 1 &Explore ...
- M_SCRIPTING <none> 0 0 &Scripting
- M_EVENTS <none> 0 1 &Events ...
- M_ALIASES <none> 0 1 &Aliases ...
- M_MENUS <none> 0 1 &Menus/popups ...
- M_SCRSEP1 <none> 0 1 -
- M_LOAD <none> 0 1 &Load script ...
- M_SCRSEP2 <none> 0 1 -
- M_VSPUBWIZ <none> 0 1 &ViRCScript Publishing Wizard ...
- EndMenuTree
-
- MenuTree MT_SERVERPOPUP
- M_BUFFER <none> 0 0 &Buffer
- M_BUFFERSAVE <none> 0 1 &Save ...
- M_BUFFERCLEAR <none> 0 1 &Clear
- M_SSEP1 <none> 0 0 -
- M_SCONNECT <none> 2 0 Co&nnect
- M_SDISCONNECT <none> 1 0 &Disconnect
- M_SSEP2 <none> 0 0 -
- M_SIGNOFF <none> 1 0 &Signoff ...
- EndMenuTree
-
- MenuTree MT_CHANNELTEXTPOPUP
- M_BUFFER <none> 0 0 &Buffer
- M_BUFFERSAVE <none> 0 1 &Save ...
- M_BUFFERCLEAR <none> 0 1 &Clear
- M_CSEP1 <none> 0 0 -
- M_OFFERXDCC <none> 0 0 &Offer XDCC packs
- M_WHOLIST <none> 0 0 &Who list ...
- EndMenuTree
-
- MenuTree MT_CHANNELNICKSPOPUP
- M_WHOIS <none> 0 0 &Whois (user info)
- M_QUERY <none> 0 0 &Query (private message window)
- M_SEP1 <none> 0 0 -
- M_DCCCHAT <none> 0 0 DCC &Chat
- M_DCCSEND <none> 0 0 DCC &Send ...
- M_TDCCSEND <none> 0 0 TDCC S&end ...
- M_TDCCVOICE <none> 0 0 TDCC &Voice ...
- M_SEP2 <none> 0 0 -
- M_CTCP <none> 0 0 C&TCP
- M_CPING <none> 0 1 &PING
- M_CVERSION <none> 0 1 &VERSION
- M_CTIME <none> 0 1 &TIME
- M_SEP3 <none> 0 0 -
- M_OP <none> 1 0 &Op
- M_DEOP <none> 1 0 &Deop
- M_KICK <none> 1 0 &Kick
- M_BAN <none> 1 0 &Ban
- M_KICKBAN <none> 1 0 K&ickban
- EndMenuTree
-
- MenuItem M_FILE on MT_MAINMENU
- EndMenuItem
-
- MenuItem M_NEWCONNECT on MT_MAINMENU
- NewServerWindow
- EndMenuItem
-
- MenuItem M_SETUP on MT_MAINMENU
- ShowClientSetup
- EndMenuItem
-
- MenuItem M_FSEP1 on MT_MAINMENU
- EndMenuItem
-
- MenuItem M_EXIT on MT_MAINMENU
- Exit
- EndMenuItem
-
- MenuItem M_TOOLS on MT_MAINMENU
- EndMenuItem
-
- MenuItem M_FINGER on MT_MAINMENU
- Finger
- EndMenuItem
-
- MenuItem M_DNS on MT_MAINMENU
- if ([$1] == [])
- @ $x = $?="Enter a hostname to DNS lookup:"
- else
- @ $x = $1-
- endif
- DNS $x
- -@ $x
- EndMenuItem
-
- MenuItem M_PORTSCAN on MT_MAINMENU
- ShowPortScanner
- EndMenuItem
-
- MenuItem M_TSEP1 on MT_MAINMENU
- EndMenuItem
-
- MenuItem M_LINKS on MT_MAINMENU
- Links
- EndMenuItem
-
- MenuItem M_CHANLIST on MT_MAINMENU
- List
- EndMenuItem
-
- MenuItem M_TSEP2 on MT_MAINMENU
- EndMenuItem
-
- MenuItem M_EXPLORE on MT_MAINMENU
- Explore
- EndMenuItem
-
- MenuItem M_SCRIPTING on MT_MAINMENU
- EndMenuItem
-
- MenuItem M_EVENTS on MT_MAINMENU
- ShowEventEditor
- EndMenuItem
-
- MenuItem M_ALIASES on MT_MAINMENU
- ShowAliasEditor
- EndMenuItem
-
- MenuItem M_MENUS on MT_MAINMENU
- ShowMenuEditor
- EndMenuItem
-
- MenuItem M_LOAD on MT_MAINMENU
- @ $x = $opendialog(Load a ViRCScript script file|ViRCScript script (*.vsc)|*.vsc|All files (*.*)|*.*)
- if ([$x] != [])
- Load $x
- endif
- -@ $x
- EndMenuItem
-
- MenuItem M_VSPUBWIZ on MT_MAINMENU
- ShowViRCScriptPublishingWizard
- EndMenuItem
-
- MenuItem M_BUFFER on MT_SERVERPOPUP
- EndMenuItem
-
- MenuItem M_BUFFERSAVE on MT_SERVERPOPUP
- @l $x = $savedialog(Append window buffer to a file|All files (*.*)|*.*)
- @l $y = $mapobject(.:tbServerText)
- AppendText "$x" $prop($y.Text)
- UnmapObject $y
- EndMenuItem
-
- MenuItem M_BUFFERCLEAR on MT_SERVERPOPUP
- @l $x = $mapobject(.:tbServerText)
- $x.Lines.Clear
- UnmapObject $x
- EndMenuItem
-
- MenuItem M_SSEP1 on MT_SERVERPOPUP
- EndMenuItem
-
- MenuItem M_SCONNECT on MT_SERVERPOPUP
- Connect
- EndMenuItem
-
- MenuItem M_SDISCONNECT on MT_SERVERPOPUP
- Disconnect
- EndMenuItem
-
- MenuItem M_SSEP1 on MT_SERVERPOPUP
- EndMenuItem
-
- MenuItem M_SIGNOFF on MT_SERVERPOPUP
- @ $x = $?="Enter a signoff quote, or just press Enter."
-
- if ([$x] != [])
- Quit $x
- else
- Quit \b[=\uV96\u=]\b Leaving
- endif
- EndMenuItem
-
- MenuItem M_BUFFER on MT_CHANNELTEXTPOPUP
- EndMenuItem
-
- MenuItem M_BUFFERSAVE on MT_CHANNELTEXTPOPUP
- @l $x = $savedialog(Append window buffer to a file|All files (*.*)|*.*)
- @l $y = $mapobject($C:tbChannelText)
- AppendText "$x" $prop($y.Text)
- UnmapObject $y
- EndMenuItem
-
- MenuItem M_BUFFERCLEAR on MT_CHANNELTEXTPOPUP
- @l $x = $mapobject($C:tbChannelText)
- $x.Lines.Clear
- UnmapObject $x
- EndMenuItem
-
- MenuItem M_CSEP1 on MT_CHANNELTEXTPOPUP
- EndMenuItem
-
- MenuItem M_OFFERXDCC on MT_CHANNELTEXTPOPUP
- XDCC
- EndMenuItem
-
- MenuItem M_WHOLIST on MT_CHANNELTEXTPOPUP
- WWho
- EndMenuItem
-
- MenuItem M_WHOIS on MT_CHANNELNICKSPOPUP
- Whois $1
- EndMenuItem
-
- MenuItem M_QUERY on MT_CHANNELNICKSPOPUP
- Query $1
- EndMenuItem
-
- MenuItem M_SEP1 on MT_CHANNELNICKSPOPUP
- EndMenuItem
-
- MenuItem M_DCCCHAT on MT_CHANNELNICKSPOPUP
- DCC Chat $1
- EndMenuItem
-
- MenuItem M_DCCSEND on MT_CHANNELNICKSPOPUP
- DCC Send $1
- EndMenuItem
-
- MenuItem M_TDCCSEND on MT_CHANNELNICKSPOPUP
- TDCC Send $1
- EndMenuItem
-
- MenuItem M_TDCCVOICE on MT_CHANNELNICKSPOPUP
- TDCC Voice $1
- EndMenuItem
-
- MenuItem M_SEP2 on MT_CHANNELNICKSPOPUP
- EndMenuItem
-
- MenuItem M_CTCP on MT_CHANNELNICKSPOPUP
- EndMenuItem
-
- MenuItem M_CPING on MT_CHANNELNICKSPOPUP
- Ping $1
- EndMenuItem
-
- MenuItem M_CVERSION on MT_CHANNELNICKSPOPUP
- CTCP $1 VERSION
- EndMenuItem
-
- MenuItem M_CTIME on MT_CHANNELNICKSPOPUP
- CTCP $1 TIME
- EndMenuItem
-
- MenuItem M_SEP3 on MT_CHANNELNICKSPOPUP
- EndMenuItem
-
- MenuItem M_OP on MT_CHANNELNICKSPOPUP
- Mode $C +o $1
- EndMenuItem
-
- MenuItem M_DEOP on MT_CHANNELNICKSPOPUP
- Mode $C -o $1
- EndMenuItem
-
- MenuItem M_KICK on MT_CHANNELNICKSPOPUP
- Kick $C $1
- EndMenuItem
-
- MenuItem M_BAN on MT_CHANNELNICKSPOPUP
- Ban $C $1
- EndMenuItem
-
- MenuItem M_KICKBAN on MT_CHANNELNICKSPOPUP
- BK $C $1
- EndMenuItem
-
- UpdateMenus